home *** CD-ROM | disk | FTP | other *** search
-
-
-
- incbin start-4000.bin
-
- Waiter:
- lea.l __(pc),a4
- move.l 4.w,a6
- move.l a6,ExecBase-__(a4)
- jsr -666(a6) ;CreateMsgPort
-
- move.l d0,MagicPort-__(a4)
- beq.w .noPort
-
- moveq #37,d0
- lea.l DosName(pc),a1
- jsr -552(a6) ;OpenLibrary
- move.l d0,DosBase-__(a4)
- beq.w .noDos
-
- pea.l Template-__(a4)
- move.l (sp)+,d1
- pea.l Array-__(a4)
- move.l (sp)+,d2
- moveq #0,d3
- move.l DosBase-__(a4),a6
- jsr -798(a6) ;ReadArgs
- move.l d0,Args-__(a4)
- bne.b .B
- bsr.w PrintFault
- bra.b .noArgs
- .B:
- move.l 0+Array-__(a4),d1
- moveq #-2,d2 ;READ
- jsr -84(a6) ;Lock
- move.l d0,d1
- bne.b .A
- bsr.b PrintFault
- bra.b .noPath
- .A: jsr -90(a6) ;UnLock
-
-
- lea.l NotifyStr-__(a4),a0
- move.l 0+Array-__(a4),(a0)
- addq.l #1,12(a0)
- move.l MagicPort-__(a4),16(a0)
- move.l a0,d1
- jsr -888(a6) ;StartNotify
- tst.l d0
- bne.b .loop
-
- moveq #236/2,d1 ;ERROR_NOT_IMPLEMENTED
- add.l d1,d1
- bsr PrintFaultB
- bra.b .bye
-
- .loop:
- moveq #-1,d0
- move.l ExecBase-__(a4),a6
- jsr -318(a6) ;Wait
-
- btst #12,d0
- bne.b .bye
-
- move.l MagicPort-__(a4),a0
- jsr -372(a6) ;GetMsg
- tst.l d0
- beq.b .loop
- .bye
-
- pea.l NotifyStr-__(a4)
- move.l (sp)+,d1
- move.l DosBase-__(a4),a6
- jsr -894(a6) ;EndNotify
-
- .noPath:
- move.l Args-__(a4),d1
- move.l DosBase-__(a4),a6
- jsr -858(a6) ;FreeArgs
- .noArgs:
- move.l DosBase-__(a4),a1
- move.l ExecBase-__(a4),a6
- jsr -414(a6)
- .noDos:
- move.l MagicPort-__(a4),a0
- move.l ExecBase-__(a4),a6
- jsr -672(a6) ;DeleteMsgPort
- .noPort:
- moveq #0,d0
- rts
-
- PrintFault:
- jsr -132(a6) ;IoErr
- move.l d0,d1
- PrintFaultB:
- moveq #0,d2
- jmp -474(a6) ;PrintFault
-
-
-
- DosName: dc.b "dos.library",0
- TEMPLATE: dc.b "PATH/A",0
-
- dc.b "$VER: NotifyWait 0.4 (01.09.02) by Zbigniew Trzcionkowski",10,0
-
- cnop 0,4
- NotifyStr:
- ds.l 1 ;path
- ds.l 1
- ds.l 1
- ds.l 1 ;SENDMESSAGE
- ds.l 1
- ds.l 1*7
-
- MagicPort: ds.l 1
- ExecBase: ds.l 1
- DosBase: ds.l 1
- Args: ds.l 1
- Array: ds.l 1*1
-
- __:
-
-